package jNotesGUI;

import java.util.*;

public final class TextLocalization
{
	Map<String, ArrayList<String>> en_US = new HashMap<String, ArrayList<String>>();
	Map<String, ArrayList<String>> es_ES = new HashMap<String, ArrayList<String>>();
	
	public static String locale = Locale.getDefault().toString();
	
	public TextLocalization()
	{
		/**
		 * en_US localization Strings
		 */
		ArrayList<String> en_US_Menu = new ArrayList<String>();
		//File Menu: index 0-5
		en_US_Menu.add("File");
		en_US_Menu.add("New");
		en_US_Menu.add("Open");
		en_US_Menu.add("Save");
		en_US_Menu.add("Backup");
		en_US_Menu.add("Exit");
		//Edit Menu: index 6-12
		en_US_Menu.add("Edit");
		en_US_Menu.add("Cut");
		en_US_Menu.add("Copy");
		en_US_Menu.add("Paste");
		en_US_Menu.add("Select All");
		en_US_Menu.add("Delete");
		en_US_Menu.add("Preferences");
		//Help Menu: index 13-15
		en_US_Menu.add("Help");
		en_US_Menu.add("Help");
		en_US_Menu.add("About");
		
		en_US.put("Menu", en_US_Menu);
		
		System.out.println("en_US Menu");
		
		for(int index = 0; index < en_US_Menu.size(); index++)
		{
			System.out.println("index = " + index + " value: " + en_US_Menu.get(index));
		}
		
		ArrayList<String> es_ES_Menu = new ArrayList<String>();
		//File Menu
		es_ES_Menu.add("Archivo");
		es_ES_Menu.add("Nuevo");
		es_ES_Menu.add("Abrir");
		es_ES_Menu.add("Guardar");
		es_ES_Menu.add("Backup");//Needs Translation
		es_ES_Menu.add("Salir");
		//Edit Menu
		es_ES_Menu.add("Editar");
		es_ES_Menu.add("Cortar");
		es_ES_Menu.add("Copiar");
		es_ES_Menu.add("Pegar");
		es_ES_Menu.add("Seleccionar Todo");
		es_ES_Menu.add("Borrar");
		es_ES_Menu.add("Preferencias");
		//Help
		es_ES_Menu.add("Ayuda");
		es_ES_Menu.add("Ayuda");
		es_ES_Menu.add("Sobre");
		
		es_ES.put("Menu", es_ES_Menu);
		
		System.out.println("es_ES Menu");
		
		for(int index = 0; index < es_ES_Menu.size(); index++)
		{
			System.out.println("index = " + index + " value: " + es_ES_Menu.get(index));
		}
	}
	
	public void setLocale(String locale)
	{
		TextLocalization.locale = locale;
	}
	
	public String getLocale()
	{
		return locale;
	}
	
	public Map<String, ArrayList<String>> getLocaleMap()
	{
		if(locale == Locale.US.toString())
			return en_US;
		else if(locale == "es_ES")
			return es_ES;
		else
			return en_US;
	}
	
}
